<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GtkCellRendererCombo</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
<link rel="up" href="TreeWidgetObjects.html" title="Tree, List and Icon Grid Widgets">
<link rel="prev" href="GtkCellRendererAccel.html" title="GtkCellRendererAccel">
<link rel="next" href="GtkCellRendererPixbuf.html" title="GtkCellRendererPixbuf">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="GtkCellRendererAccel.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="TreeWidgetObjects.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GTK+ 2 Reference Manual</th>
<td><a accesskey="n" href="GtkCellRendererPixbuf.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GtkCellRendererCombo.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GtkCellRendererCombo.description" class="shortcut">Description</a>
                   | 
                  <a href="#GtkCellRendererCombo.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GtkCellRendererCombo.properties" class="shortcut">Properties</a>
                   | 
                  <a href="#GtkCellRendererCombo.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="GtkCellRendererCombo"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GtkCellRendererCombo.top_of_page"></a>GtkCellRendererCombo</span></h2>
<p>GtkCellRendererCombo — Renders a combobox in a cell</p>
</td>
<td valign="top" align="right"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GtkCellRendererCombo.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gtk/gtk.h&gt;

struct              <a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo-struct" title="struct GtkCellRendererCombo">GtkCellRendererCombo</a>;
<a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="returnvalue">GtkCellRenderer</span></a> *   <a class="link" href="GtkCellRendererCombo.html#gtk-cell-renderer-combo-new" title="gtk_cell_renderer_combo_new ()">gtk_cell_renderer_combo_new</a>         (<em class="parameter"><code><span class="type">void</span></code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         +----<a class="link" href="GtkObject.html" title="GtkObject">GtkObject</a>
               +----<a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer">GtkCellRenderer</a>
                     +----<a class="link" href="GtkCellRendererText.html" title="GtkCellRendererText">GtkCellRendererText</a>
                           +----GtkCellRendererCombo
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo--has-entry" title='The "has-entry" property'>has-entry</a>"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo--model" title='The "model" property'>model</a>"                    <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a>*         : Read / Write
  "<a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo--text-column" title='The "text-column" property'>text-column</a>"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo-changed" title='The "changed" signal'>changed</a>"                                        : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a>
</pre>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.description"></a><h2>Description</h2>
<p>
<a class="link" href="GtkCellRendererCombo.html" title="GtkCellRendererCombo"><span class="type">GtkCellRendererCombo</span></a> renders text in a cell like <a class="link" href="GtkCellRendererText.html" title="GtkCellRendererText"><span class="type">GtkCellRendererText</span></a> from
which it is derived. But while <a class="link" href="GtkCellRendererText.html" title="GtkCellRendererText"><span class="type">GtkCellRendererText</span></a> offers a simple entry to
edit the text, <a class="link" href="GtkCellRendererCombo.html" title="GtkCellRendererCombo"><span class="type">GtkCellRendererCombo</span></a> offers a <a class="link" href="GtkComboBox.html" title="GtkComboBox"><span class="type">GtkComboBox</span></a> or <a class="link" href="GtkComboBoxEntry.html" title="GtkComboBoxEntry"><span class="type">GtkComboBoxEntry</span></a>
widget to edit the text. The values to display in the combo box are taken from
the tree model specified in the
<a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo--model" title='The "model" property'>model</a> property.
</p>
<p>
The combo cell renderer takes care of adding a text cell renderer to the combo
box and sets it to display the column specified by its
<a class="link" href="GtkCellRendererCombo.html#GtkCellRendererCombo--text-column" title='The "text-column" property'>text-column</a>
property. Further properties of the comnbo box can be set in a handler for the
editing-started signal.
</p>
<p>
The <a class="link" href="GtkCellRendererCombo.html" title="GtkCellRendererCombo"><span class="type">GtkCellRendererCombo</span></a> cell renderer was added in GTK+ 2.6.
</p>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GtkCellRendererCombo-struct"></a><h3>struct GtkCellRendererCombo</h3>
<pre class="programlisting">struct GtkCellRendererCombo;</pre>
<p>
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-cell-renderer-combo-new"></a><h3>gtk_cell_renderer_combo_new ()</h3>
<pre class="programlisting"><a class="link" href="GtkCellRenderer.html" title="GtkCellRenderer"><span class="returnvalue">GtkCellRenderer</span></a> *   gtk_cell_renderer_combo_new         (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Creates a new <a class="link" href="GtkCellRendererCombo.html" title="GtkCellRendererCombo"><span class="type">GtkCellRendererCombo</span></a>. 
Adjust how text is drawn using object properties. 
Object properties can be set globally (with <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#g-object-set"><code class="function">g_object_set()</code></a>). 
Also, with <a class="link" href="GtkTreeViewColumn.html" title="GtkTreeViewColumn"><span class="type">GtkTreeViewColumn</span></a>, you can bind a property to a value 
in a <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a>. For example, you can bind the "text" property 
on the cell renderer to a string value in the model, thus rendering 
a different string in each row of the <a class="link" href="GtkTreeView.html" title="GtkTreeView"><span class="type">GtkTreeView</span></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>the new cell renderer</td>
</tr></tbody>
</table></div>
<p class="since">Since 2.6</p>
</div>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkCellRendererCombo--has-entry"></a><h3>The <code class="literal">"has-entry"</code> property</h3>
<pre class="programlisting">  "has-entry"                <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>
If <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, the cell renderer will include an entry and allow to enter
values other than the ones in the popup list.
</p>
<p>Default value: TRUE</p>
<p class="since">Since 2.6</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRendererCombo--model"></a><h3>The <code class="literal">"model"</code> property</h3>
<pre class="programlisting">  "model"                    <a class="link" href="GtkTreeModel.html" title="GtkTreeModel"><span class="type">GtkTreeModel</span></a>*         : Read / Write</pre>
<p>
Holds a tree model containing the possible values for the combo box. 
Use the text_column property to specify the column holding the values.
</p>
<p class="since">Since 2.6</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkCellRendererCombo--text-column"></a><h3>The <code class="literal">"text-column"</code> property</h3>
<pre class="programlisting">  "text-column"              <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gint"><span class="type">gint</span></a>                  : Read / Write</pre>
<p>
Specifies the model column which holds the possible values for the 
combo box. 
</p>
<p>
Note that this refers to the model specified in the model property, 
<span class="emphasis"><em>not</em></span> the model backing the tree view to which 
this cell renderer is attached.
</p>
<p>
<a class="link" href="GtkCellRendererCombo.html" title="GtkCellRendererCombo"><span class="type">GtkCellRendererCombo</span></a> automatically adds a text cell renderer for 
this column to its combo box.
</p>
<p>Allowed values: &gt;= G_MAXULONG</p>
<p>Default value: -1</p>
<p class="since">Since 2.6</p>
</div>
</div>
<div class="refsect1">
<a name="GtkCellRendererCombo.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkCellRendererCombo-changed"></a><h3>The <code class="literal">"changed"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GtkCellRendererCombo.html" title="GtkCellRendererCombo"><span class="type">GtkCellRendererCombo</span></a> *combo,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>                *path_string,
                                                        <a class="link" href="GtkTreeModel.html#GtkTreeIter"><span class="type">GtkTreeIter</span></a>          *new_iter,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>              user_data)        : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-LAST:CAPS"><code class="literal">Run Last</code></a></pre>
<p>
This signal is emitted each time after the user selected an item in
the combo box, either by using the mouse or the arrow keys.  Contrary
to GtkComboBox, GtkCellRendererCombo::changed is not emitted for
changes made to a selected item in the entry.  The argument <em class="parameter"><code>new_iter</code></em>
corresponds to the newly selected item in the combo box and it is relative
to the GtkTreeModel set via the model property on GtkCellRendererCombo.
</p>
<p>
Note that as soon as you change the model displayed in the tree view,
the tree view will immediately cease the editing operating.  This
means that you most probably want to refrain from changing the model
until the combo cell renderer emits the edited or editing_canceled signal.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>combo</code></em> :</span></p></td>
<td>the object on which the signal is emitted</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>path_string</code></em> :</span></p></td>
<td>a string of the path identifying the edited cell
(relative to the tree view model)</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>new_iter</code></em> :</span></p></td>
<td>the new iter selected in the combo box
(relative to the combo box model)</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
<p class="since">Since 2.14</p>
</div>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>